// webpack 的配置文件 node  commonJS 规范
let path = require('path');// node的内置模块
const { CleanWebpackPlugin } = require('clean-webpack-plugin');// 用来清空之前打包生成的文件
const HtmlWebpackPlugin = require('html-webpack-plugin');// 用来自动跟据对应的html模板生成新的html
console.log(__dirname);// node 的每一个模块中的自带的变量 指的是当前文件夹的绝对路径
console.log(path.resolve(__dirname,'build'))
module.exports = {
  mode:"development",//指定环境的 development  production(默认)
  entry:'./src/index.js',// 告诉webpack打包的主入口文件
  output:{
    // 打包之后的输出文件
    filename:'aaa.[hash:6].js', //指定打包之后的文件的名字 hash是为了防止缓存而生的
    // 还需要告诉webpack打包之后的文件组要放到那个位置
    path:path.resolve(__dirname,'dist'),// path对应的值需要是一个绝对路径
  },
  plugins:[
    new CleanWebpackPlugin(),
    new HtmlWebpackPlugin({
      title:"我很帅",
      template:'./index.html',
      minify:true,// 压缩生成的html
      filename:'newIndex.html',// 生成的html的名字  不写的话默认是 模板的名字
    })
  ],
  devServer:{
    port:7000,// 打开服务的端口
    open:true,// 自动打开浏览器页面
    hot:true,
    compress:true,
    contentBase:'static'// 静态资源目录
  }
}